Entering personal information by manually typing is error prone and subject to security risk as there is little way to verify that information is accurate. This is further complicated by the lack of a full keyboard on some mobile devices. Further, some regulatory and security requirements mandate that keyed personal information matches how it appears on a government issued ID such as a Driver License. If the information does not match, the transaction can be rejected. This process can be frustrating and time consuming. Some website operators have reported as much as 50% of all web transactions that require personal information are abandoned. This has a negative effect not only on the consumer but also the website operator in the form of reduced web traffic and reduced transactions.
Identification cards, such as government issued identification cards, increasingly include some form of machine-readable data. Often many different entities (e.g., corporations, states, or government organizations) use different encoding for this machine-readable data. Further, many computing devices, such as mobile computing devices, include cameras and sufficient processing capability to parse this machine-readable data.
Other developers have attempted to scan identification card data using Optical Character Recognition (OCR) of the front face of the identification card. Such methods are much more processor intensive and slower than embodiments described herein. Further, such methods are far less accurate, as properly detecting text characters is inherently less accurate for a machine than detecting data encoded in a multi-dimensional bar code (e.g., a code using PDF-417) because scanning a bar code is “machine to machine.” Some entities (e.g., government bodies or corporations) will only accept scanned information if that information is machine-to-machine. Such entities will not accept data determined using OCR as this is not machine-to-machine data.